package com.asset.dispoal.business.merge.domain.db.mapper;

import com.asset.dispoal.business.bsAgreement.dto.MergeDownloadRequest;
import com.asset.dispoal.business.bsAgreement.dto.MergeDownloadResponse;
import com.asset.dispoal.business.merge.domain.db.entity.BsMergeDownload;
import com.asset.dispoal.business.merge.domain.db.entity.ConfItemDo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import tech.mhuang.pacebox.springboot.protocol.data.Page;

import java.util.List;

@Mapper
public interface MergeDownloadMapper {

    void insert(BsMergeDownload mergeDownload);

    List<String> findTypeIds(@Param("evidenceConfId") String evidenceConfId, @Param("appointId") String appointId);

    List<ConfItemDo> findConfItemDetailById(@Param("evidenceConfId") String evidenceConfId, @Param("appointId") String appointId);

    void insertAgreement(@Param("downloadId") String id, @Param("agreementIdList") List<String> agreementIdList);

    void updateStateFileUrl(@Param("id") String requestKey, @Param("downloadFileUrl") String fileUrl, @Param("state") String state);

    int queryPageCount(MergeDownloadRequest mergeDownloadRequest);

    List<MergeDownloadResponse> queryPage(Page<MergeDownloadRequest> page);
}
